/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package NM_Procesos;

import NM_ClasesGenerales.Cliente;
import NM_ClasesGenerales.Usuario;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author hsanchez
 */
public class RecuperaUsuario {

    public Usuario LeeUsuario(String Email, String Clave) {

        Usuario oUsuario = null;
        try {
            LectorDatos oLectorDatos = new LectorDatos();
            ArrayList oReservaArrayList = new ArrayList();
            oReservaArrayList = oLectorDatos.LeerArchivoTxt(1, "usuarios");

            oUsuario = RecuperarListaUsuario(Email, Clave, ",", oReservaArrayList);

        } catch (Exception ex) {
            Logger.getLogger(RecuperaCliente.class.getName()).log(Level.SEVERE, null, ex);

        }
//        if (oUsuario == null) {
//            oUsuario = new Usuario();
//            oUsuario.setoIdUser(9999);
//        }

        return oUsuario;
    }

    public Usuario RecuperarListaUsuario(String Email, String Clave, String oCorte, ArrayList oReservaArrayList) {

        Usuario oUsuario = null;
        int oID = 0;
        String oDK = null;
        byte state = 0;

        try {

            for (int i = 0; i < oReservaArrayList.size(); i++) {

                String[] oSplit = oReservaArrayList.get(i).toString().split(oCorte);
                String oEmail_Aux = oSplit[4];

                if (Email.equals(oEmail_Aux)) {

                    oID = Integer.parseInt(oSplit[0]);
                    oDK = (oSplit[3]);
                    state = Byte.parseByte(oSplit[5]);
                    oUsuario = new Usuario(oID,
                            oSplit[1],
                            oSplit[2],
                            oSplit[4],
                            oDK,
                            state);

                }

                oSplit = null;

            }


        } catch (Exception e) {
            oUsuario = null;
            Logger.getLogger(RecuperarPNR.class.getName()).log(Level.SEVERE, null, e);
        } finally {
            oID = 0;
            oDK = null;
            oCorte = null;
            oReservaArrayList = null;
        }

        return oUsuario;
    }
}
